package bstsetcode;

/**
 * @author noob
 * @version 1.0
 * @date 2021/3/13 21:52
 * 插入排序的优化
 * 1：把i位置的元素先报存出来
 * 2：j与j-1比较，找出待插入的位置j
 * 3：将待插入的元素放到合适的位置
 */
public class InsertionSortT2 {

    public static <E extends Comparable<E>> void sort(E[] data){

        for (int i = 0; i < data.length; i++) {
            E value = data[i];
            int j;
            for(j = i; j-1>=0 && value.compareTo(data[j-1])<0;j--){
                data[j] = data[j-1];
            }
            data[j] = value;
        }
    }
}
